#pragma region License
/************************************************************************
 *                                                                      *
 * Copyright (C) 2010, 2011 Ghoul                                       *
 * All rights reserved.                                                 *
 *                                                                      *
 ************************************************************************/
#pragma endregion

#ifndef __Windows_h__
#define __Windows_h__

#pragma once

/* Fix for <winnt.h> */
#ifndef __ptr64
#	define __ptr64
#endif
typedef void* __ptr64 PVOID64;

#ifndef POINTER_64
#	define POINTER_64
#endif

#ifdef UNICODE
#undef UNICODE
#endif

#ifdef _UNICODE
#undef _UNICODE
#endif

#ifndef _CRT_SECURE_NO_WARNINGS
#define _CRT_SECURE_NO_WARNINGS
#endif
#
#ifndef _CRT_RAND_S
#define _CRT_RAND_S
#endif

#ifndef _STL_SECURE_NO_WARNINGS
#define _STL_SECURE_NO_WARNINGS
#endif

#include <windows.h>

#include "resource.h"

#ifdef _MSC_VER
#   pragma comment(linker, "/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"")
#endif

#include <tchar.h>
#include <windowsx.h>
#include <commctrl.h>
#include <commdlg.h>
#include <shellapi.h>
#include <gdiplus.h>

#if defined(__BORLANDC__) || defined(_MSC_VER)
#   pragma comment(lib, "comctl32")
#   pragma comment(lib, "comdlg32")
#   pragma comment(lib, "advapi32")
#   pragma comment(lib, "msimg32")
#   pragma comment(lib, "shell32")
#   pragma comment(lib, "gdiplus")
#endif

#ifndef EventHandler
#define EventHandler(e) __fastcall Cls_##e
#endif

#ifndef EventID
#define EventID(e) Cls_##e
#endif

#ifndef EventTable
#define EventTable switch(Msg)
#endif

#ifndef MapEvent
#define MapEvent(e) \
    case (e): return SetDlgMsgResult((hWnd), e, HANDLE_##e((hWnd), (wParam), (lParam), Cls_##e))
#endif


#endif /* __Windows_h__ */
